System host platforms, for example, computing and communication platforms, may include multiple sub-systems or chips. These subsystems may include read only memory (e.g., ROM-based chips) to store software, firmware, factory settings, etc., associated with the operation of that subsystem. Occasionally, updates to the ROM contents are required, for example to apply patches to the software or firmware to provide bug fixes or new features, or to adjust parameters. Patch downloads may be applied by the host to the chips as part of the boot up process for the chips. Typically, the host sends commands to the chip via some physical transport mechanism, where each command is associated with a packet of download patch content.
Some host systems perform the patch download without using any type of acknowledgment mechanism. These systems expect that the patch packets will not encounter any errors during the download. The physical transport, however, may be noisy, particularly if the host and the chip are manufactured by different vendors. Thus, in the event of an error, the entire patch download process must be restarted, which may result in an unacceptable delay.
Other host systems may employ an acknowledgment mechanism where the host sends a command to the chip and then waits for the acknowledge signal (ACK) from the chip, indicating success for that command/packet. This unfortunately creates a bottleneck since further packet downloads may be held up until the ACK is received. Here again, in the event of an error, the entire patch download may need to be repeated.
Still other systems may employ a Transfer Control Protocol (TCP) style ACK mechanism. Under this scheme, the ACK is sent only in case of failure. However, if the ACK is lost, for example under noisy conditions, the host and the chip may lose synchronization which may result in the chip operating with an incorrect patch or not operating correctly at all.
Although the following Detailed Description will proceed with reference being made to illustrative embodiments, many alternatives, modifications, and variations thereof will be apparent to those skilled in the art.